import request from '@/config/axios'

// 订单管理 VO
export interface OrderVO {
  orderId: number // 订单ID
  orderNo: string // 订单号
  userId: number // 乘客ID
  city: string // 城市
  vehicleClass: number // 车辆类型
  orderStatus: number // 订单状态ID
  pickupLocation: string // 上车地点
  dropoffLocation: string // 下车地点
  start: string // 起点名称
  startCity: string // 起点城市
  startAddress: string // 起点详细地址
  startLatitude: number // 起点纬度
  startLongitude: number // 起点经度
  end: string // 终点名称
  endCity: string // 终点城市
  endAddress: string // 终点详细地址
  endLatitude: number // 终点纬度
  endLongitude: number // 终点经度
  orderAmount: number // 订单金额(元)
  serviceDuration: number // 服务时长(分钟)
  serviceDistance: number // 服务里程(公里)
  fromId: number // 下单来源
  payId: number // 支付类型
  mobile: string // 联系手机号
  appointmentTime: Date // 预约时间
  statusText: string // 状态文本
  remark: string // 备注
  driverId: number // 司机ID
}

// 订单管理 API
export const OrderApi = {
  // 查询订单管理分页
  getOrderPage: async (params: any) => {
    return await request.get({ url: `/ride/order/page`, params })
  },

  // 查询订单管理详情
  getOrder: async (id: number) => {
    return await request.get({ url: `/ride/order/get?id=` + id })
  },

  // 新增订单管理
  createOrder: async (data: OrderVO) => {
    return await request.post({ url: `/ride/order/create`, data })
  },

  // 修改订单管理
  updateOrder: async (data: OrderVO) => {
    return await request.put({ url: `/ride/order/update`, data })
  },

  // 删除订单管理
  deleteOrder: async (id: number) => {
    return await request.delete({ url: `/ride/order/delete?id=` + id })
  },

  // 导出订单管理 Excel
  exportOrder: async (params) => {
    return await request.download({ url: `/ride/order/export-excel`, params })
  },
}